﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

namespace WebService
{
    public class CL_BDD
    {
        public antoEntities context { get; set; }
        public CL_BDD()
        {
            this.context = new antoEntities();
        }

        /// <summary>
        /// Fonction qui renvoie l'utilisateur correspondant au login et mdp
        /// </summary>
        /// <param name="login"></param>
        /// <param name="mdp"></param>
        /// <returns>USER ou null (en cas d'echec)</returns>
        public USER connection(string login, string mdp)
        {
            USER u = new USER();
            List<USER> listResult = context.USER.Where(x => (x.Login.Equals(login)) && (x.Pwd.Equals(mdp))).ToList();
            //CL_historique.Log("Tentative de connexion pour " + login);
            if (listResult.Count == 1) { u = listResult[0]; CL_historique.Log(u, "se Connecte"); }
            else { u = null; }

            return u;
        }
        /// <summary>
        /// Fonction qui renvoie l'utilisateur correspondant au login et mdp
        /// </summary>
        /// <param name="login"></param>
        /// <param name="mdp"></param>
        /// <returns>USER ou null (en cas d'echec)</returns>
        //public bool connection(string login, string mdp)
        //{
        //    USER u = new USER();
        //    if (context.USER.Count(x => (x.Login.Equals(login)) && (x.Pwd.Equals(mdp))) == 1)
        //    {

        //    }
        //    //CL_historique.Log("Tentative de connexion pour " + login);
        //    if (listResult.Count == 1) { u = listResult[0]; CL_historique.Log(u, "se Connecte"); }
        //    else { u = null; }

        //    return u;
        //}

        /// <summary>
        /// Créer un USER et l'insère dans la BDD (en faisant un commit)
        /// </summary>
        /// <param name="login"></param>
        /// <param name="pwd"></param>
        /// <param name="secret"></param>
        public void createUser(string login, string pwd, byte secret)
        {
            USER user = new USER();
            user.Login = login;
            user.Pwd = pwd;
            user.Secret = secret;
            this.context.AddToUSER(user);
            this.context.SaveChanges();
            CL_historique.Log("ajout d'utilisateur");
        }

    }
}